package volmgr

import (
	"net/http"
)

type Clerk struct {
	Master string
}

func NewClerk(master string) *Clerk {
	c := new(Clerk)
	return c
}

//strip size: 1, 2, .., 32, 64, .., 1024, 2048, 4096KB
//strip count: 1, 2, 4, 8, 16, 32, .., 1024
func (c *Clerk) CreateVolume(args CreateVolumeArgs, reply *CreateVolumeReply) (err error) {
	// http://masterAddr/create?size=xx&strip=xx&shard=xx
	return
}

func (c *Clerk) DeleteVolume(volume ContainerId, token AuthToken) error {
	return nil
}

//note: the below APIs are also called by the inkernel driver
func (c *Clerk) StatVolume(volume ContainerId, token AuthToken) (*VolumeStats, error) {
	return new(VolumeStats), nil
}

func (c *Clerk) ReportVolume(volume ConainterId, token AuthToken, vs *VolumeStats) error {
	return nil
}
